Get Tools
Used to retrieve all tools with optional filtering and pagination. This allows you to list and search through available tools in your project, including API tools, MCP servers, webhooks, and GraphQL tools.
API Endpoint
| Property | Value |
|---|---|
| Request Method | GET |
| Request URL | https://api.seliseblocks.com/tools/ |
Request
Request Example
# Get all tools with default pagination
curl -X GET 'https://api.seliseblocks.com/tools/?project_key=YOUR_PROJECT_KEY' \
-H 'accept: application/json'
# Filter by tool type
curl -X GET 'https://api.seliseblocks.com/tools/?tool_type=api&project_key=YOUR_PROJECT_KEY' \
-H 'accept: application/json'
# Filter by status with pagination
curl -X GET 'https://api.seliseblocks.com/tools/?tool_status=active&page=1&page_size=20&project_key=YOUR_PROJECT_KEY' \
-H 'accept: application/json'
# Combine multiple filters
curl -X GET 'https://api.seliseblocks.com/tools/?tool_type=mcp_server&tool_status=active&page=2&page_size=50&project_key=YOUR_PROJECT_KEY' \
-H 'accept: application/json'
Query Parameters
| Field | Type | Required | Description |
|---|---|---|---|
| tool_type | string | No | Filter by tool type. Available values: api, mcp_server, webhook, graphql |
| tool_status | string | No | Filter by status. Available values: active, inactive, deprecated, maintenance |
| page | integer | No | Page number for pagination (default: 1, minimum: 1). |
| page_size | integer | No | Number of items per page (default: 50, minimum: 1, maximum: 100). |
| project_key | string | No | The project key for your project. |
Request Headers
| Field | Type | Required | Description |
|---|---|---|---|
| accept | string | Yes | Accepted response format. Use application/json |
note
Tool Types
- api: Standard REST API tools
- mcp_server: Model Context Protocol server tools
- webhook: Webhook-based integration tools
- graphql: GraphQL API tools
Tool Status Values
- active: Tool is currently active and available for use
- inactive: Tool is temporarily disabled
- deprecated: Tool is marked for future removal
- maintenance: Tool is undergoing maintenance
tip
Filtering and Pagination Best Practices:
- Use
tool_typeto narrow results to specific integration types - Combine
tool_typeandtool_statusfilters for precise searches - Start with default pagination (page_size=50) and adjust based on needs
- Use smaller page sizes (10-20) for better performance with large datasets
- Always include
project_keyto scope results to your project
The system will:
- Return tools matching all specified filter criteria
- Order results by creation date (newest first) by default
- Include total count and pagination metadata in the response
- Apply access control based on project permissions
- Return empty results if no tools match the criteria
Response
Success Response (200 OK)
Returns a paginated list of tools matching the filter criteria.
{
"tools": [
{
"id": "tool_123",
"name": "Customer API",
"type": "api",
"status": "active",
"description": "API for customer data management",
"created_at": "2025-12-01T10:30:00Z",
"updated_at": "2026-01-10T14:20:00Z",
"configuration": {
"base_url": "https://api.example.com",
"version": "v1"
}
},
{
"id": "tool_456",
"name": "Analytics MCP Server",
"type": "mcp_server",
"status": "active",
"description": "MCP server for analytics and reporting",
"created_at": "2025-11-15T08:00:00Z",
"updated_at": "2026-01-05T16:45:00Z",
"configuration": {
"server_url": "https://mcp.analytics.example.com",
"transport": "streamable_http"
}
}
],
"pagination": {
"page": 1,
"page_size": 50,
"total_items": 127,
"total_pages": 3,
"has_next": true,
"has_previous": false
},
"filters_applied": {
"tool_type": null,
"tool_status": "active"
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
| tools | array | Array of tool objects matching the filter criteria. |
| pagination | object | Pagination metadata. |
| filters_applied | object | Summary of filters that were applied to the query. |
Tool Object Fields
| Field | Type | Description |
|---|---|---|
| id | string | Unique identifier of the tool. |
| name | string | Display name of the tool. |
| type | string | Tool type (api, mcp_server, webhook, graphql). |
| status | string | Current status of the tool. |
| description | string | Description of the tool's purpose and functionality. |
| created_at | string | ISO 8601 timestamp when the tool was created. |
| updated_at | string | ISO 8601 timestamp when the tool was last updated. |
| configuration | object | Tool-specific configuration details. |
Pagination Object Fields
| Field | Type | Description |
|---|---|---|
| page | integer | Current page number. |
| page_size | integer | Number of items per page. |
| total_items | integer | Total number of tools matching the filter criteria. |
| total_pages | integer | Total number of pages available. |
| has_next | boolean | Whether there is a next page available. |
| has_previous | boolean | Whether there is a previous page available. |
Empty Results Response
Returns when no tools match the filter criteria.
{
"tools": [],
"pagination": {
"page": 1,
"page_size": 50,
"total_items": 0,
"total_pages": 0,
"has_next": false,
"has_previous": false
},
"filters_applied": {
"tool_type": "webhook",
"tool_status": "deprecated"
}
}
Error Response (422 Unprocessable Entity)
Returns validation error details when the request parameters are invalid.
{
"detail": [
{
"loc": [
"query",
"page_size"
],
"msg": "ensure this value is less than or equal to 100",
"type": "value_error.number.not_le"
}
]
}
Error Response Fields
| Field | Type | Description |
|---|---|---|
| detail | array | Array of validation error objects. |
| loc | array | Location of the error in the request (e.g., query parameter). |
| msg | string | Human-readable error message. |
| type | string | Error type identifier. |
Error Codes
| Status Code | Description | Response Type |
|---|---|---|
| 200 | Successful Response | Success |
| 400 | Bad Request - Invalid query parameters | Bad Request |
| 422 | Validation Error - Invalid parameter values | Unprocessable Entity |